1
ビルドの最適化:リリースプロファイルの理解
AI034Lesson 14
00:00

Rustでは、 リリースプロファイル は、開発者がコンパイル時間と実行時パフォーマンスのトレードオフを制御できるようにする事前定義された設定です。 コンパイル時間 および 実行時パフォーマンスこれらの設定を調整することで、迅速なイテレーションか本番環境へのデプロイに応じて、コンパイラの振る舞いをカスタマイズできます。

1. 開発用とリリース用プロファイルの違い

Cargoには2つの主要なプロファイルがあります: dev (「 cargo build」で使用)と release (「 cargo build --release)。devプロファイルは高速なコンパイルを最適化していますが、コードの実行速度は遅くなります。一方、リリースプロファイルは最大限の効率性を得るためにマシンコードの最適化に時間をかけています。

2. 最適化レベルの設定

opt-level 」設定はパフォーマンスの主な制御手段です。0から3までの範囲で指定できます:

  • 0: 最適化なし。高速なビルド、遅いコード。(devのデフォルト)
  • 1-2: 中程度の最適化。
  • 3: 積極的な最適化。遅いビルド、最も速いコード。(リリースのデフォルト)
  • 「s」または「z」: 速度ではなくバイナリサイズの最適化を行います。
プロファイルデフォルトの最適化レベル目的
dev0高速なイテレーション
release3本番環境での高速性

3. プロファイルのカスタマイズ

これらのデフォルト値は、 Cargo.tomlで上書きできます。最適化されていないコードがテストに不十分すぎる(例:重いシミュレーションなど)場合や、完全なリリースビルドに時間がかかりすぎる場合に役立ちます。

[profile.dev]
opt-level = 1 # level 0より高速なコード。コンパイルも依然として高速
main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>